P2P communication techniques in which direct communication is performed between two terminals are known. Here, in a case in which communication is performed between terminals using a P2P communication technique, there are cases where direct communication between terminals cannot be performed depending on configuration of a network to which the terminals are connected. For example, in a case in which two terminals belong to different private networks respectively, packets are discarded depending on the specification of NAT (Network Address Translation), so that direct communication between terminals cannot be performed.
In order to make it possible to perform P2P communication in such a case, there is a technique installing a relay apparatus on a public network to relay P2P communication performed between terminals via the relay apparatus.
However, when performing P2P communication of video or voice between terminals, a large communication band is required in general. Therefore, when relaying P2P communication of video or voice, a process load of the relay apparatus becomes large. Further, depending on the installation place of the relay apparatus, the communication route becomes long so that delay of communication becomes large, which deteriorates real-time property which is an advantage of P2P communication.
Here, as a technique for handling increase of process load of servers, there is a load distribution technique for performing load distribution, with respect to requests from terminals, by distributing the requests to any of a plurality of servers based on a virtual ID (Identifier) calculated by a hash function (refer to patent document 1, for example).